Using Controlled Numbers of Real Faults and Mutants to Empirically Evaluate Coverage-Based Test Case Prioritization

نویسندگان

  • David Paterson
  • Gregory M. Kapfhammer
  • Gordon Fraser
  • Phil McMinn
چکیده

Used to establish confidence in the correctness of evolving software, regression testing is an important, yet costly, task. Test case prioritization enables the rapid detection of faults during regression testing by reordering the test suite so that effective tests are run as early as is possible. However, a distinct lack of information about the regression faults found in complex real-world software forced prior experimental studies of these methods to use artificial faults called mutants. Using the Defects4J database of real faults, this paper presents the results of experiments evaluating the effectiveness of four representative test prioritization techniques. Since this paper’s results show that prioritization is susceptible to high amounts of variance when only one fault is present, our experiments also control the number of real faults and mutants in the program subject to regression testing. Our overall findings are that, in comparison to mutants, real faults are harder for reordered test suites to quickly detect, suggesting that mutants are not a surrogate for real faults. ACM Reference Format: David Paterson, Gregory M. Kapfhammer, Gordon Fraser, and Phil McMinn. 2018. Using Controlled Numbers of Real Faults and Mutants to Empirically Evaluate Coverage-Based Test Case Prioritization. In AST’18: IEEE/ACM 13th International Workshop on Automation of Software Test , May 28–29, 2018, Gothenburg, Sweden. ACM, New York, NY, USA, 7 pages. https://doi. org/10.1145/3194733.3194735

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Test case prioritization using Cuscuta search

Most companies are under heavy time and resource constraints when it comes to testing a software system. Test prioritization technique(s) allows the most useful tests to be executed first, exposing faults earlier in the testing process. Thus makes software testing more efficient and cost effective by covering maximum faults in minimum time. But test case prioritization is not an easy and straig...

متن کامل

Factors Oriented Test Case Prioritization Technique in Regression Testing using Genetic Algorithm

Test case prioritization involves scheduling test cases in an order that increases the effectiveness in achieving some performance goals. One of the most important performance goals is the rate of fault detection. Test cases should run in an order that increases the possibility of fault detection and also that detects the most severe faults at the earliest in its testing life cycle. In this pap...

متن کامل

Test Case Prioritization Using Fault Severity

Regression testing is the process of executing all or some of the tests that already have been conducted to ensure that no new errors have been introduced in the previously tested code. It is very expensive technique. To reduce the cost of regression technique and to increase the effectiveness of testing process we can prioritize the test cases. To date there are number of techniques have been ...

متن کامل

Empirical Evaluation of Mutation-based Test Prioritization Techniques

We propose a new test case prioritization technique that combines both mutation-based and diversity-based approaches. Our diversity-aware mutation-based technique relies on the notion of mutant distinguishment, which aims to distinguish one mutant’s behavior from another, rather than from the original program. We empirically investigate the relative cost and effectiveness of the mutation-based ...

متن کامل

Similarity-based regression test case prioritization

With the continuous evolution of software systems, test suites often grow very large. Rerunning all test cases may be impractical in regression testing under limited resources. Coverage-based test case prioritization techniques have been proposed to improve the effectiveness of regression testing. The original test suite often contains some test cases which are designed for exercising productio...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2018